package com.ruoyi.project.manhua.member.domain;

import java.math.BigDecimal;
import java.util.Date;
import com.fasterxml.jackson.annotation.JsonFormat;
import org.apache.commons.lang3.builder.ToStringBuilder;
import org.apache.commons.lang3.builder.ToStringStyle;
import com.ruoyi.framework.aspectj.lang.annotation.Excel;
import com.ruoyi.framework.web.domain.BaseEntity;

/**
 * 会员对象 tb_member
 * 
 * @author yuan
 * @date 2021-03-03
 */
public class TbMember extends BaseEntity
{
    private static final long serialVersionUID = 1L;

    /** 用户id */
    private Long userId;

    /** 微信openid */
    @Excel(name = "微信openid")
    private String openId;

    /** 团队编码 */
    @Excel(name = "团队编码")
    private String teamCoding;

    /** Token */
    @Excel(name = "Token")
    private String accessToken;

    /** OA会员账号 */
    @Excel(name = "OA会员账号")
    private String appId;

    /** 用户头像 */
    @Excel(name = "用户头像")
    private String avatar;

    /** 用户名 */
    @Excel(name = "用户名")
    private String username;

    /** 手机号 */
    @Excel(name = "手机号")
    private String mobile;

    /** 密码 */
    @Excel(name = "密码")
    private String password;

    /** 支付密码 */
    @Excel(name = "支付密码")
    private String paymentPassword;

    /** 推荐人 */
    @Excel(name = "推荐人")
    private Long recommend;

    /** 会员等级 */
    @Excel(name = "会员等级")
    private String level;

    /** 当前余额 */
    @Excel(name = "当前余额")
    private BigDecimal balance;

    /** 金币 */
    @Excel(name = "金币")
    private Long gold;

    /** 最后登录时间 */
    @JsonFormat(pattern = "yyyy-MM-dd")
    @Excel(name = "最后登录时间", width = 30, dateFormat = "yyyy-MM-dd")
    private Date logInTime;

    /** 用户真实姓名 */
    @Excel(name = "用户真实姓名")
    private String source;

    /** 当前状态：1为正常登录，2为禁用 */
    @Excel(name = "当前状态：1为正常登录，2为禁用")
    private Long status;

    /** 银行卡号 */
    @Excel(name = "银行卡号")
    private String card;

    /** 开户银行 */
    @Excel(name = "开户银行")
    private String bank;

    /** 支付宝账号姓名 */
    @Excel(name = "支付宝账号姓名")
    private String aliName;

    /** 支付宝账号 */
    @Excel(name = "支付宝账号")
    private String aliUser;

    /** 用户积分 */
    @Excel(name = "用户积分")
    private BigDecimal integral;

    /** 累计金额(礼包商品) */
    @Excel(name = "累计金额(礼包商品)")
    private BigDecimal accumulativeAmount;

    public void setUserId(Long userId)
    {
        this.userId = userId;
    }

    public Long getUserId()
    {
        return userId;
    }
    public void setOpenId(String openId)
    {
        this.openId = openId;
    }

    public String getOpenId()
    {
        return openId;
    }
    public void setTeamCoding(String teamCoding)
    {
        this.teamCoding = teamCoding;
    }

    public String getTeamCoding()
    {
        return teamCoding;
    }
    public void setAccessToken(String accessToken)
    {
        this.accessToken = accessToken;
    }

    public String getAccessToken()
    {
        return accessToken;
    }
    public void setAppId(String appId)
    {
        this.appId = appId;
    }

    public String getAppId()
    {
        return appId;
    }
    public void setAvatar(String avatar)
    {
        this.avatar = avatar;
    }

    public String getAvatar()
    {
        return avatar;
    }
    public void setUsername(String username)
    {
        this.username = username;
    }

    public String getUsername()
    {
        return username;
    }
    public void setMobile(String mobile)
    {
        this.mobile = mobile;
    }

    public String getMobile()
    {
        return mobile;
    }
    public void setPassword(String password)
    {
        this.password = password;
    }

    public String getPassword()
    {
        return password;
    }
    public void setPaymentPassword(String paymentPassword)
    {
        this.paymentPassword = paymentPassword;
    }

    public String getPaymentPassword()
    {
        return paymentPassword;
    }
    public void setRecommend(Long recommend)
    {
        this.recommend = recommend;
    }

    public Long getRecommend()
    {
        return recommend;
    }
    public void setLevel(String level)
    {
        this.level = level;
    }

    public String getLevel()
    {
        return level;
    }
    public void setBalance(BigDecimal balance)
    {
        this.balance = balance;
    }

    public BigDecimal getBalance()
    {
        return balance;
    }
    public void setGold(Long gold)
    {
        this.gold = gold;
    }

    public Long getGold()
    {
        return gold;
    }
    public void setLogInTime(Date logInTime)
    {
        this.logInTime = logInTime;
    }

    public Date getLogInTime()
    {
        return logInTime;
    }
    public void setSource(String source)
    {
        this.source = source;
    }

    public String getSource()
    {
        return source;
    }
    public void setStatus(Long status)
    {
        this.status = status;
    }

    public Long getStatus()
    {
        return status;
    }
    public void setCard(String card)
    {
        this.card = card;
    }

    public String getCard()
    {
        return card;
    }
    public void setBank(String bank)
    {
        this.bank = bank;
    }

    public String getBank()
    {
        return bank;
    }
    public void setAliName(String aliName)
    {
        this.aliName = aliName;
    }

    public String getAliName()
    {
        return aliName;
    }
    public void setAliUser(String aliUser)
    {
        this.aliUser = aliUser;
    }

    public String getAliUser()
    {
        return aliUser;
    }
    public void setIntegral(BigDecimal integral)
    {
        this.integral = integral;
    }

    public BigDecimal getIntegral()
    {
        return integral;
    }
    public void setAccumulativeAmount(BigDecimal accumulativeAmount)
    {
        this.accumulativeAmount = accumulativeAmount;
    }

    public BigDecimal getAccumulativeAmount()
    {
        return accumulativeAmount;
    }

    @Override
    public String toString() {
        return new ToStringBuilder(this,ToStringStyle.MULTI_LINE_STYLE)
            .append("userId", getUserId())
            .append("openId", getOpenId())
            .append("teamCoding", getTeamCoding())
            .append("accessToken", getAccessToken())
            .append("appId", getAppId())
            .append("avatar", getAvatar())
            .append("username", getUsername())
            .append("mobile", getMobile())
            .append("password", getPassword())
            .append("paymentPassword", getPaymentPassword())
            .append("createTime", getCreateTime())
            .append("recommend", getRecommend())
            .append("level", getLevel())
            .append("balance", getBalance())
            .append("gold", getGold())
            .append("logInTime", getLogInTime())
            .append("source", getSource())
            .append("status", getStatus())
            .append("card", getCard())
            .append("bank", getBank())
            .append("aliName", getAliName())
            .append("aliUser", getAliUser())
            .append("integral", getIntegral())
            .append("accumulativeAmount", getAccumulativeAmount())
            .toString();
    }
}
